
package ADMINISTRACION_MODELO;

import Conexion.Conexion;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

public class ADM_SUCURSAL_PROVEEDOR {

    private Double ID;
    private Double ID_PROVEEDOR;
    private String DIRECCION;
    private Double TELEFONO;
    private String UBICACION_GOOGLE_MAP;
    private Double NRO_AUTORIZACION;
    private Conexion con = null;

    public ADM_SUCURSAL_PROVEEDOR() {
    }

    public ADM_SUCURSAL_PROVEEDOR(Double ID, Double ID_PROVEEDOR, String DIRECCION, Double TELEFONO, String UBICACION_GOOGLE_MAP, Double NRO_AUTORIZACION) {
        this.ID = ID;
        this.ID_PROVEEDOR = ID_PROVEEDOR;
        this.DIRECCION = DIRECCION;
        this.TELEFONO = TELEFONO;
        this.UBICACION_GOOGLE_MAP = UBICACION_GOOGLE_MAP;
        this.NRO_AUTORIZACION = NRO_AUTORIZACION;
    }

    public boolean Insertar() {
        try {
            String consulta = "insert into BROKER.ADM_SUCURSAL_PROVEEDOR(ID, ID_PROVEEDOR, DIRECCION, TELEFONO, UBICACION_GOOGLE_MAP, NRO_AUTORIZACION) VALUES (" + ID + "," + ID_PROVEEDOR + ",'" + DIRECCION + "'," + TELEFONO + ",'" + UBICACION_GOOGLE_MAP + "',0)";
            con.EjecutarSentencia(consulta);
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }

    public boolean EliminarXid() {
        try {
            String consulta = "delete from BROKER.ADM_SUCURSAL_PROVEEDOR where ID= " + getID();
            con.EjecutarSentencia(consulta);
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }

    public List<ADM_SUCURSAL_PROVEEDOR> Todos() {
        try {
            String consulta = "select * from BROKER.ADM_SUCURSAL_PROVEEDOR";
            ResultSet rs = con.EjecutarConsulta(consulta);
            return Cargar(rs);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
    
    public List<ADM_SUCURSAL_PROVEEDOR> TodosxProveedor(double id_prov) {
        try {
            String consulta = "select * from BROKER.ADM_SUCURSAL_PROVEEDOR where ID_PROVEEDOR = "+id_prov;
            ResultSet rs = con.EjecutarConsulta(consulta);
            return Cargar(rs);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    public List<ADM_SUCURSAL_PROVEEDOR> Cargar(ResultSet rs) {
        try {
            List<ADM_SUCURSAL_PROVEEDOR> lista = new ArrayList<ADM_SUCURSAL_PROVEEDOR>();
            while (rs.next()) {
                ADM_SUCURSAL_PROVEEDOR objeto = new ADM_SUCURSAL_PROVEEDOR();
                objeto.setID(rs.getDouble("ID"));
                objeto.setID_PROVEEDOR(rs.getDouble("ID_PROVEEDOR"));
                objeto.setDIRECCION(rs.getString("DIRECCION"));
                objeto.setTELEFONO(rs.getDouble("TELEFONO"));
                objeto.setUBICACION_GOOGLE_MAP(rs.getString("UBICACION_GOOGLE_MAP"));
                objeto.setNRO_AUTORIZACION(rs.getDouble("NRO_AUTORIZACION"));
                objeto.setCon(con);
                lista.add(objeto);
            }
            return lista;
        } catch (SQLException ex) {
            ex.printStackTrace();
            return null;
        }
    }

    public double getID() {
        return ID;
    }

    public void setID(double ID) {
        this.ID = ID;
    }

    public double getID_PROVEEDOR() {
        return ID_PROVEEDOR;
    }

    public void setID_PROVEEDOR(double ID_PROVEEDOR) {
        this.ID_PROVEEDOR = ID_PROVEEDOR;
    }

    public String getDIRECCION() {
        return DIRECCION;
    }

    public void setDIRECCION(String DIRECCION) {
        this.DIRECCION = DIRECCION;
    }

    public double getTELEFONO() {
        return TELEFONO;
    }

    public void setTELEFONO(double TELEFONO) {
        this.TELEFONO = TELEFONO;
    }

    public String getUBICACION_GOOGLE_MAP() {
        return UBICACION_GOOGLE_MAP;
    }

    public void setUBICACION_GOOGLE_MAP(String UBICACION_GOOGLE_MAP) {
        this.UBICACION_GOOGLE_MAP = UBICACION_GOOGLE_MAP;
    }

    public double getNRO_AUTORIZACION() {
        return NRO_AUTORIZACION;
    }

    public void setNRO_AUTORIZACION(double NRO_AUTORIZACION) {
        this.NRO_AUTORIZACION = NRO_AUTORIZACION;
    }

    public Conexion getCon() {
        return this.con;
    }

    public void setCon(Conexion con) {
        this.con = con;
    }
}
